﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AdaptModel
{
    /// <summary>
    /// 客户端需要的接口或者抽象类
    /// </summary>
    public interface IClientTarget
    {
        /// <summary>
        /// 处理客户端请求
        /// </summary>
        void ClientRequest();
    }
    /// <summary>
    /// 需要适配的对象,即已经存在的类但不适合当前接口的需求
    /// </summary>
    public class Adaptee
    {
        /// <summary>
        /// 请求处理
        /// </summary>
        public void ReceiveAccept()
        {
            Console.WriteLine("我是适配对象");
        }
    }
    /// <summary>
    /// 定义适配器
    /// </summary>
    public class Adapter : IClientTarget
    {
        //定义一个适配的对象
        private Adaptee adapee = new Adaptee();
        public void ClientRequest()
        {
            Console.WriteLine("适配器调用适配者的方法，进行接口的转换");
            adapee.ReceiveAccept();
        }
    }
}
